package com.ruoyi.test.service;

import java.util.List;
import java.util.Map;

/**
 * 送货单报表Service接口
 * 
 * @author ruoyi
 * @date 2024-12-27
 */
public interface ITestDeliveryReportsService {
    
    /**
     * 获取总体统计数据
     * 
     * @param month 统计月份，格式：YYYY-MM
     * @return 总体统计数据
     */
    Map<String, Object> getSummaryStats(String month);
    
    /**
     * 获取客户统计数据
     * 
     * @param month 统计月份，格式：YYYY-MM
     * @param limit 返回条数限制
     * @return 客户统计数据列表
     */
    List<Map<String, Object>> getCustomerStats(String month, Integer limit);
    
    /**
     * 获取产品统计数据
     * 
     * @param month 统计月份，格式：YYYY-MM
     * @param limit 返回条数限制
     * @return 产品统计数据列表
     */
    List<Map<String, Object>> getProductStats(String month, Integer limit);
    
    /**
     * 获取日期趋势数据
     * 
     * @param month 统计月份，格式：YYYY-MM
     * @param groupBy 分组方式：day/week
     * @return 日期趋势数据列表
     */
    List<Map<String, Object>> getTrendStats(String month, String groupBy);
    
    /**
     * 获取仪表板全部数据
     * 
     * @param month 统计月份，格式：YYYY-MM
     * @param metric 统计指标：totalAmount/deliveryCount/detailCount/totalQuantity
     * @return 仪表板数据
     */
    Map<String, Object> getDashboardData(String month, String metric);
} 